home *** CD-ROM | disk | FTP | other *** search
/ Complete Linux / Complete Linux.iso / docs / system / mail / transpor / ifmail23.z / ifmail23 / ifmail / iflib / xutil.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-01-24  |  631 b   |  48 lines

  1. #include <stdlib.h>
  2. #include <string.h>
  3. #include <stdio.h>
  4. #include "xutil.h"
  5. #include "lutil.h"
  6.  
  7. char *xmalloc(size)
  8. size_t size;
  9. {
  10.     char *tmp;
  11.  
  12.     tmp=malloc(size);
  13.     if (!tmp) abort();
  14.     
  15.     return tmp;
  16. }
  17.  
  18. char *xstrcpy(src)
  19. char *src;
  20. {
  21.     char    *tmp;
  22.  
  23.     if (src == NULL) return(NULL);
  24.     tmp=xmalloc(strlen(src)+1);
  25.     strcpy(tmp,src);
  26.     return tmp;
  27. }
  28.  
  29. char *xstrcat(src,add)
  30. char *src,*add;
  31. {
  32.     char *tmp;
  33.     size_t size=0;
  34.  
  35.     if ((add == NULL) || (strlen(add) == 0)) return src;
  36.     if (src) size=strlen(src);
  37.     size+=strlen(add);
  38.     tmp=xmalloc(size+1);
  39.     *tmp='\0';
  40.     if (src) 
  41.     {
  42.         strcpy(tmp,src);
  43.         free(src);
  44.     }
  45.     strcat(tmp,add);
  46.     return tmp;
  47. }
  48.